<?php

/*
* Modelo: "aplicacion_rol.php"
*
* Realizado por:
* 	Carlos Calvo
*	Elisa Conesa
*/

@include_once('enlaceBD.php');

class Aplicacion_rol {
	
    /* Nombre de las Variables del Modelo (INFORMATIVO)
    +-----------------+-------------+------+-----+---------+-------+
	| Field           | Type        | Null | Key | Default | Extra |
	+-----------------+-------------+------+-----+---------+-------+
	| id_rol          | int(11)     | NO   | PRI | NULL    |       |
	| id_aplicacion   | int(11)     | NO   | PRI | NULL    |       |
	| nombre          | varchar(50) | NO   |     | NULL    |       |
	| descripcion     | varchar(50) | NO   |     | NULL    |       |
	| id_permisologia | text        | NO   |     | NULL    |       |
	| bd              | varchar(50) | NO   |     | NULL    |       |
	+-----------------+-------------+------+-----+---------+-------+
	*/
	
	// Variable para los resultados de las Consultas
	private $respuesta;
	
	// Tablas del Modelo
	private $taplicacion_rol 		= "aplicacion_rol";
	
	
    // =================================================================================================================
    //	FUNCION - CONSULTAR LOS ROLES DE LOS USUARIOS DADA UNA APLICACION
    // =================================================================================================================
    
    public function consultar() {
        $conexion 	= new EnlaceBD;
        $var 		= $conexion->conectar( $_SESSION['db_portal'] );
		
		$sql = "select id_rol as id_rol, 
					id_aplicacion as id_aplicacion, 
					nombre as nombre, 
					descripcion as descripcion, 
					id_permisologia as id_permisologia, 
					bd as bd 
				from ".$_SESSION['db_portal'].$_SESSION['schema_db'].".$this->taplicacion_rol 
				where id_aplicacion = ".$_SESSION['id_aplicacion']." 
				order by id_rol";
        
        $this->respuesta = $conexion->consultar($sql) 
			or die("No se pudo consultar los Roles de los Usuarios.");
		
        $i = 0;
        while ( $temparray = $this->respuesta->buscar_fila() ) {
            $lista_aplicacion_rol[$i][0] = $temparray['id_rol'];
            $lista_aplicacion_rol[$i][1] = $temparray['id_aplicacion'];
			$lista_aplicacion_rol[$i][2] = strtoupper($temparray['nombre']);
            $lista_aplicacion_rol[$i][3] = strtoupper($temparray['descripcion']);
            $lista_aplicacion_rol[$i][4] = $temparray['id_permisologia'];
			$lista_aplicacion_rol[$i][5] = $temparray['bd'];
            $i++;
        }
        
        $conexion->desconectar();
        return $lista_aplicacion_rol;
    }
	
	
	// =================================================================================================================
    //	FUNCION - CONSULTAR EL NOMBRE DEL ROL DADO UN ROL DE UNA APLICACION
    // =================================================================================================================
    
    public function consultar_nombre_rol( $id_rol ) {
        $conexion 	= new EnlaceBD;
        $var 		= $conexion->conectar( $_SESSION['db_portal'] );
		
		$id_rol 	= filter_var($id_rol, FILTER_SANITIZE_NUMBER_INT);
		
		$sql = "select nombre as nombre 
				from ".$_SESSION['db_portal'].$_SESSION['schema_db'].".$this->taplicacion_rol 
				where id_rol = $id_rol and 
					id_aplicacion = ".$_SESSION['id_aplicacion'];
		
		$this->respuesta = $conexion->consultar($sql) 
			or die("No se pudo consultar el Nombre del Rol del Usuario.");
		
		$temparray = $this->respuesta->buscar_fila();
        
        $conexion->desconectar();
        return strtoupper($temparray['nombre']);
    }
	
	
	// =======================================================================================================
    //	FUNCION - CONSULTAR LAS BASE DE DATOS DADO UN ROL DE UNA APLICACION
    // =======================================================================================================
    
    public function consultar_bd_rol( $id_rol ) {
        $conexion 	= new EnlaceBD;
        $var 		= $conexion->conectar( $_SESSION['db_portal'] );
		
		$id_rol 	= filter_var($id_rol, FILTER_SANITIZE_NUMBER_INT);
		
		$sql = "select bd as bd 
				from ".$_SESSION['db_portal'].$_SESSION['schema_db'].".$this->taplicacion_rol 
				where id_rol = $id_rol and 
					id_aplicacion = ".$_SESSION['id_aplicacion'];
		
		$this->respuesta = $conexion->consultar($sql) 
			or die("No se pudo consultar las Base de Datos del Rol del Usuario.");
		
		$temparray = $this->respuesta->buscar_fila();
		
        $conexion->desconectar();
        return $temparray['bd'];
    }
}
?>